﻿/*
 *  Этот пример реализиует использование шаблона Model-View-ViewModel
 *  Для этого создается класс VM_MainWindow-сингелтон в виде
 *  статического поля
 *  И привязка к этому классу осуществляется через 
 *  DataContext="{Binding Source={x:Static l:MainWindow.MainWindow_MV}}"
 *  а не DataContext="{Binding RelativeSource={RelativeSource Self}}", т.к.
 *  в этом случае привязка к полю не проходит (но проходит к св-ву)
 *  
 * Сингелтон MainWindow_MV наследуется от сингелтона VM_Base, который реализует
 * INotifyPropertyChanged
 */

using System.Windows;

namespace Wpf_MVVM_Template
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        // при привязке в xaml через Source, это поле (MainWindow_MV) не обязано быть св-ом 
        static public VM_MainWindow MainWindow_MV = VM_MainWindow.Instance;

        public MainWindow()
        {
            InitializeComponent();
        }
    }
}
